package zhh.tangbao.auxiliary.service;

import org.springframework.web.multipart.MultipartFile;
import zhh.tangbao.auxiliary.entity.SystemFile;
import zhh.tangbao.auxiliary.vo.SystemFileUploadVo;

/**
 * 2023/2/26
 * @author 粥灰灰
 * @version 1.0
 * 系统附件
 */
public interface SystemFileService {

    /**
     * 将文件记录绑定到指定的业务对象上
     * @param mappingId 目标业务对象
     * @param fileId 文件ID
     * @return
     */
    int bindingFile(String mappingId, Long fileId);

    SystemFile get(Long id);

    /**
     * 根据文件ID直接获取该文件访问路径
     * @param fileId
     * @return
     */
    String getFileAccessPathById(Long fileId);

    SystemFileUploadVo upload(MultipartFile file);

    /**
     * 直接通过文件名判断文件类型，进而判断文件是否符和上传规范
     * @param file 需要判断的文件
     * @return 符和规范：True，不符合规范：False
     */
    boolean canUpload(MultipartFile file);

}
